HTML Web Storage API
HTML वेब संग्रहण API; कुकीज़ से बेहतर.
HTML वेब स्टोरेज क्या है?
वेब स्टोरेज के साथ, एप्लिकेशन उपयोगकर्ता के ब्राउज़र में स्थानीय रूप से डेटा संग्रहीत कर सकते हैं।
HTML5 से पहले, एप्लिकेशन डेटा को कुकीज़ में संग्रहीत करना पड़ता था, जिन्हें प्रत्येक सर्वर अनुरोध में जोड़ा जाता था। वेब स्टोरेज बहुत सुरक्षित है, और वेबसाइट के प्रदर्शन को प्रभावित किए बिना बड़ी मात्रा में डेटा स्थानीय रूप से संग्रहीत किया जा सकता है।
कुकीज़ के विपरीत, भंडारण सीमा बहुत बड़ी है (कम से कम 5 एमबी) और जानकारी सर्वर पर स्थानांतरित नहीं होती है।
वेब संग्रहण उत्पत्ति (डोमेन और प्रोटोकॉल पर आधारित) पर आधारित है। सभी पृष्ठ एक ही मूल से समान डेटा संग्रहीत और एक्सेस कर सकते हैं।
वेब संग्रहण एपीआई ऑब्जेक्ट
वेब स्टोरेज ब्राउज़र में डेटा संग्रहीत करने के लिए दो ऑब्जेक्ट प्रदान करता है:
window.localStorage
समाप्ति तिथि के बिना डेटा सहेजता है (ब्राउज़र टैब बंद होने पर भी डेटा नष्ट नहीं होता है)
window.sessionStorage
प्रति सत्र डेटा बचाता है (ब्राउज़र टैब बंद होने पर डेटा खो जाता है)
ब्राउज़र समर्थन
तालिका में संख्याएँ पहले ब्राउज़र संस्करण का प्रतिनिधित्व करती हैं जो वेब स्टोरेज का पूरी तरह से समर्थन करता है।
| API | Chrome | Edge | Firefox | Safari | Opera |
|---|---|---|---|---|---|
| localStorage | 4.0 | 8.0 | 3.5 | 4.0 | 11.5 |
| sessionStorage | 4.0 | 8.0 | 3.5 | 4.0 | 11.5 |
वेब स्टोरेज एपीआई समर्थन का परीक्षण करें
वेब स्टोरेज का उपयोग करने से पहले, आइए लोकलस्टोरेज और सेशनस्टोरेज के लिए ब्राउज़र समर्थन की तुरंत जाँच करें:
उदाहरण
<script>
const x = document.getElementById("result");
if (typeof(Storage) !== "undefined") {
x.innerHTML = "Your browser supports Web storage!";
} else {
x.innerHTML = "Sorry, no Web storage support!";
}
</script>
अपना ब्राउज़र समर्थन जांचें:
लोकलस्टोरेज ऑब्जेक्ट
लोकलस्टोरेज ऑब्जेक्ट बिना समाप्ति तिथि के डेटा संग्रहीत करता है। ब्राउज़र बंद होने पर भी डेटा नष्ट नहीं होता है और अगले दिन, सप्ताह या वर्ष के लिए उपलब्ध रहता है।
उदाहरण
<स्क्रिप्ट> स्थिरांक x = document.getElementById('परिणाम'); यदि (टाइपऑफ़ (भंडारण) !== "अपरिभाषित") { // सहेजें localStorage.setItem ("अंतिम नाम", "स्मिथ"); localStorage.setItem('bgcolor', 'पीला'); // पुनर्स्थापित करें x.innerHTML = localStorage.getItem("अंतिम नाम"); x.style.backgroundColor = localStorage.getItem("bgcolor"); }अन्यथा{ x.innerHTML = "क्षमा करें, कोई वेब संग्रहण समर्थन नहीं!"; } </स्क्रिप्ट>
उदाहरण स्पष्टीकरण:
- नाम/मूल्य जोड़े बनाने के लिए
localStorage.setItem()विधि का प्रयोग करें - सेट मान पुनः प्राप्त करने के लिए
localStorage.getItem()विधि का प्रयोग करें - "अंतिम नाम" मान पुनः प्राप्त करें
id="result"तत्व में डालें - "बीजीकलर" का मान पुनः प्राप्त करें।
id="result"बैड के बाद एलिमेंट में रंग डालें
"अंतिम नाम" लोकलस्टोरेज तत्व को हटाने का सिंटैक्स इस प्रकार है:
localStorage.removeItem("lastname");
नोट:
नाम/मूल्य जोड़े हमेशा स्ट्रिंग के रूप में संग्रहीत होते हैं। आवश्यकता पड़ने पर उन्हें दूसरे प्रारूप में परिवर्तित करना याद रखें!
लोकलस्टोरेज के साथ क्लिक की गिनती
निम्नलिखित उदाहरण यह गिनता है कि उपयोगकर्ता ने कितनी बार एक बटन पर क्लिक किया है। इस कोड में मान को एक स्ट्रिंग संख्या में परिवर्तित किया जाता है ताकि काउंटर को बढ़ाया जा सके:
उदाहरण
<script>
function clickCounter() {
const x = document.getElementById("result");
if (typeof(Storage) !== "undefined") {
if (localStorage.clickcount) {
localStorage.clickcount = Number(localStorage.clickcount)+1;
} else {
localStorage.clickcount = 1;
}
x.innerHTML = "You have clicked the button " + localStorage.clickcount + " time(s)!";
} else {
x.innerHTML = "Sorry, no Web storage support!";
}
}
</script>
लोकलस्टोरेज क्लिक काउंटर:
सेशनस्टोरेज ऑब्जेक्ट
सेशनस्टोरेज ऑब्जेक्ट लोकलस्टोरेज ऑब्जेक्ट के बराबर है, जो केवल एक सत्र के लिए डेटा संग्रहीत करता है! जब उपयोगकर्ता निर्दिष्ट ब्राउज़र टैब बंद कर देता है तो डेटा हटा दिया जाता है।
सेशनस्टोरेज के साथ क्लिक की गिनती
निम्न उदाहरण यह गणना करता है कि किसी उपयोगकर्ता ने वर्तमान सत्र में किसी बटन पर कितनी बार क्लिक किया है:
उदाहरण
<script>
function clickCounter() {
const x = document.getElementById("result");
if (typeof(Storage) !== "undefined") {
if (sessionStorage.clickcount) {
sessionStorage.clickcount = Number(sessionStorage.clickcount)+1;
} else {
sessionStorage.clickcount = 1;
}
x.innerHTML = "You have clicked the button " + sessionStorage.clickcount + " time(s) in this session!";
} else {
x.innerHTML = "Sorry, no Web storage support!";
}
}
</script>
सेशनस्टोरेज क्लिक काउंटर:
टिप्पणी:
सेशनस्टोरेज काउंटर को हटाने के लिए बटन पर क्लिक करने के लिए टैब को रीफ्रेश करने और एक नया सत्र शुरू करने की आवश्यकता होती है। या ब्राउज़र टैब बंद करें और एक नया खोलें।
वेब भंडारण के तरीके
निर्दिष्ट कुंजी और मान युग्म को संग्रहीत करता है
निर्दिष्ट कुंजी का मान पुनर्प्राप्त करता है
निर्दिष्ट कुंजी और उसका मान हटा देता है
सभी कुंजी/मूल्य जोड़े हटा देता है
निर्दिष्ट सूचकांक में कुंजी का नाम लौटाता है
संग्रहीत वस्तुओं की संख्या लौटाता है